package com.huluobo.high3videoproject.demo;

import android.os.Bundle;
import android.util.Log;
import android.view.MotionEvent;
import android.view.View;
import android.widget.ImageView;

import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;

import com.huluobo.high3videoproject.R;

public class TestActivity extends AppCompatActivity implements View.OnClickListener {

    private BezierLineView bezierLineView;

    private ImageView imageView;

    private View.OnClickListener onClickListener = new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            bezierLineView.addImageVIew();
        }
    };

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_test);

        bezierLineView = findViewById(R.id.bezierView);
        imageView = findViewById(R.id.iv_add_start);
        imageView.setOnClickListener(onClickListener);

        //第一种添加接口的方式
        imageView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                onMyClick.onClick();
            }
        });

        //第二种:好处是可以统一管理点击事件,通过view的ID来做switch case的操作
        imageView.setOnClickListener(this);
        imageView.setOnClickListener(this);
        imageView.setOnClickListener(this);
        imageView.setOnClickListener(this);
        imageView.setOnClickListener(this);
        imageView.setOnClickListener(this);

        //第三种形式,可以通过接口的变量来添加单击事件,好处是,接口成为了变量,可以添加和移除接口,一般在各种第三方中比较常用
        imageView.setOnClickListener(onClickListener);
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.bezierView:
                break;
        }
    }

    public void setOnMyClick(OnMyClick onMyClick) {
        this.onMyClick = onMyClick;
    }

    private OnMyClick onMyClick;

    interface OnMyClick {
        void onClick();
    }
}
